1. Quellenlage analysieren
Richtzeit: 12–15 MinutenEin System nutzt drei Datenquellen:
| Quelle | Beinhaltet | Aktualisierung |
|---|---|---|
| Produktdatenbank | ID, Name, Kategorie, Basispreis | laufend |
| Lager-CSV | Produkt-ID, Bestand, Lagerort | täglich morgens |
| Lieferanten-API | Produkt-ID, Lieferzeit, Verfügbarkeit beim Lieferanten | bei Abruf |
- Beschreibe, welche Quelle die führende Quelle für Produktnamen und Preise sein sollte.
- Erkläre, warum der Lagerbestand aus einer anderen Quelle kommen kann.
- Nenne ein Risiko, wenn Quellen zu unterschiedlichen Zeiten aktualisiert werden.
2. Gemeinsames Antwortmodell entwerfen
Richtzeit: 18–20 MinutenEntwirf ein JSON-Objekt, das Daten aus allen drei Quellen kombiniert. Es soll mindestens enthalten:
id, name, category, basePrice, stock, warehouse, supplierAvailability, deliveryDays, lastUpdated
- Erstelle ein Beispielobjekt mit plausiblen Werten.
- Nutze passende Datentypen.
- Kennzeichne mit
lastUpdated, wann die kombinierte Antwort erstellt wurde.
Hinweis: Bei kombinierten API-Antworten ist Transparenz wichtig: Clients sollten erkennen können, wie aktuell Daten sind.
3. Endpunkte für kombinierte Produktdaten planen
Richtzeit: 12–15 Minuten- Entwirf einen Endpunkt für eine Produktübersicht mit kombinierten Daten.
- Entwirf einen Endpunkt für Details zu einem einzelnen Produkt.
- Ergänze zwei sinnvolle Query-Parameter, z. B. für Kategorie, Verfügbarkeit oder Sortierung.
- Beschreibe kurz, welche Daten im Hintergrund aus welcher Quelle gelesen werden.
| Zweck | Methode + Endpunkt | Query-Parameter | Genutzte Quellen |
|---|---|---|---|
| Übersicht | |||
| Detail |
4. Umgang mit unvollständigen Quelldaten
Richtzeit: 12–15 MinutenDie Lieferanten-API ist kurzzeitig nicht erreichbar. Produktdatenbank und Lager-CSV sind aber verfügbar.
- Entscheide, ob die API trotzdem eine Antwort liefern sollte.
- Entwirf eine mögliche JSON-Antwort, in der sichtbar wird, dass Lieferantendaten fehlen.
- Formuliere eine kurze Warnmeldung für den Client.
Hinweis: Fehlende Teildaten müssen nicht immer zum vollständigen Abbruch führen. Wichtig ist, dass der Client den Zustand erkennt.
5. Kurze Architekturentscheidung begründen
Richtzeit: 10–12 MinutenVergleiche zwei Möglichkeiten:
| Variante A | Variante B |
|---|---|
| Die API liest bei jedem Aufruf alle Quellen live aus. | Die API nutzt einen vorberechneten Zwischenspeicher, der regelmäßig aktualisiert wird. |
- Nenne je einen Vorteil pro Variante.
- Nenne je einen Nachteil pro Variante.
- Empfiehl eine Variante für eine Schulungsumgebung und begründe deine Wahl.
| Variante | Vorteil | Nachteil |
|---|---|---|
| A: Live auslesen | ||
| B: Zwischenspeicher |